const express =require('express')
const router =express.Router()
const c=require('../connection')

//1.查询新闻类别
router.get('/cat',(req,res,next)=>{
	  //执行SQL命令
		c.query('select * from ht_cat order by cid asc',(err,r)=>{
			if(err){
				return next(err)
			}
			res.send({
				code:200,
				msg:'新闻类别',
				data:r
			})
		})
})

//2.新闻列表
router.get('/list',(req,res,next)=>{
	var obj=req.query
	//如果类别编号为空默认为编号10
	if(!obj.cid){
		obj.cid=10
	}
	obj.cid=parseInt(obj.cid)
	//如果页码为空默认为显示第一页
	if(!obj.pno){
		obj.pno=1
	}
	//如果每页数据亮为空默认显示失调
	if(!obj.count){
		obj.count=10
	}
	//分页查询：开始查询的值
	var start =(obj.pno-1)*obj.count
	//将每页的数据量转为数值型
	var size =parseInt(obj.count)
	c.query('select nid,title,ctime from ht_news where cat_id=? limit ?,?;select count(*) as n from ht_news where cat_id=?',[obj.cid,start,size,obj.cid],(err,r)=>{
		if(err){
			return next(err)
		}
		console.log(r)
		res.send({
			code:200,
			msg:'新闻列表',
			data:r[0],
			total:r[1][0].n,
			pno:obj.pno
		}) 
	})
})

//练习：编写文章详情的接口（get /detail）get方式传递新闻的编号，查询这条新闻数据，最后响应{code：200，msg：‘新闻详情’，data：查询的数据}
router.get('/detail',(req,res,next)=>{
	var obj=req.query
	c.query('select * from ht_news where nid=?',[obj.nid],(err,r)=>{
		if(err){
			return next(err)
		}
		if(r.length===0){
			res.send({
				code:404,
				msg:'新闻不存在'
			})
		}
		else{
			console.log(r)
			res.send({
				code:201,
				msg:'新闻详情',
				data:r
			})
		}
	})
})



module.exports=router